﻿// Decompiled with JetBrains decompiler
// Type: MCM.Abstractions.Xml.PropertyGroupXmlModel
// Assembly: MCMv5, Version=5.10.2.0, Culture=neutral, PublicKeyToken=null
// MVID: 7AB326B9-B2B4-41C2-9177-68E944071101
// Assembly location: D:\steam\steamapps\workshop\content\261550\2859238197\bin\Win64_Shipping_Client\MCMv5.dll

using System;
using System.Collections.Generic;
using System.Xml.Serialization;

#nullable enable
namespace MCM.Abstractions.Xml
{
  [XmlType("PropertyGroups")]
  [Serializable]
  public class PropertyGroupXmlModel : IPropertyGroupDefinition
  {
    [XmlAttribute("DisplayName")]
    public string GroupName { get; set; } = (string) null;

    [XmlAttribute("Order")]
    public int GroupOrder { get; set; }

    [XmlArray("Properties")]
    [XmlArrayItem("PropertyBool", typeof (PropertyBoolXmlModel))]
    [XmlArrayItem("PropertyDropdown", typeof (PropertyDropdownXmlModel))]
    [XmlArrayItem("PropertyFloatingInteger", typeof (PropertyFloatingIntegerXmlModel))]
    [XmlArrayItem("PropertyInteger", typeof (PropertyIntegerXmlModel))]
    [XmlArrayItem("PropertyText", typeof (PropertyTextXmlModel))]
    public List<PropertyBaseXmlModel> Properties { get; set; } = (List<PropertyBaseXmlModel>) null;
  }
}
